Search engine for video and graphics

ABSTRACT

A method of selecting graphic or video files having corresponding locators used to locate such graphic or video files using a computer. Identifiers are created by searching an area within a web page near a graphic or video file for searchable identification terms and searching an area within a web page near links to a graphic or video for searchable identification terms. The identifiers are stored in a database. User requests for graphic or video file content are received and the database of identifiers is searched to find graphic and video files corresponding criteria of the user. Graphic or video file content is then provided to the user.

REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/894,684, filed Aug. 20, 2007, now U.S. Pat. No. 7,822,760, which is acontinuation of U.S. patent application Ser. No. 11/021,478, filed Dec.22, 2004, which is a continuation of U.S. patent application Ser. No.09/452,287, filed Nov. 30, 1999, now U.S. Pat. No. 6,859,799, whichclaims priority to U.S. Provisional Application No. 60/110,299, filedNov. 30, 1998, all of which are hereby incorporated by reference intheir entireties.

FIELD OF THE INVENTION

This invention relates generally to Internet search engines, and moreparticularly to a search engine for retrieval of video and graphics overthe Internet.

BACKGROUND OF THE INVENTION

Over the past few years, the amount of content available over theInternet has grown tremendously. Much of the Internet's content isdistributed widely across many locations. Therefore, a search engineand/or navigator is required for meaningful retrieval of information.There are numerous search engines and navigators available to search forspecific content on the Internet.

Current search engines and navigators are designed to search for textwithin the text contained in web pages or other files on the Internet ora written description of the web page to be located. A search enginestores the location of a given piece of information and variousdescriptions of the information in a database that is searchable by auser. Often, the information to be located is itself descriptive.

A search engine may rely upon the content providers to establish boththe location of the content and descriptive search terms to enable usersof the search engine to find the content. Alternatively, the process ofsearch engine registration is automated. A content provider places a“meta-tag” into their web page or other content. The “meta-tag” containskeywords that a search engine can index the page location upon to enablesearching. The “meta-tag” is not displayed by a page reader's webbrowser software.

A search engine may use a web crawler to search for content on theInternet. The web crawler automatically “spiders” through web pages byfollowing every link from one web page to other web pages until all ofthe links are exhausted. As the web crawler spiders through pages, theweb crawler correlates the descriptive tags on each page viewed with thelocation of the page to construct a searchable database.

Recently, advances in Internet access have enabled more users to createvideo and graphic content and to distribute that content over theInternet. Furthermore, video streams are becoming more and more commonas a form of content on the Internet. As with text and file content, theincreasingly large amount of video and graphic content is distributedwidely across many locations, thus creating the need for a search engineand/or navigator for meaningful retrieval of information.

The need to be able to search for video or graphics will only continueto grow as streaming video becomes more available and popular over theInternet or similar information transferal systems, such as on-lineservices, Intranets, etc. Furthermore, as personal computers and otheroffice or home equipment develop larger and larger memory and storagecapacity, the storage of video streams will become even more common andthe need for a video search engine (“VSE”) will increase.

Video and graphic content does not lend itself to easy searching becausevideo and graphics often do not contain any text description that can besearched with a currently available navigator or search engine.Furthermore, there is no uniform format for identifying and describing avideo or a graphic. Therefore, currently available search engines andbrowsers are inefficient and unusable for meaningful retrieval of videoand graphic information over the Internet. There is currently no easy ordirect way to search for a video or to search, display, select, or takeaction on, video streams. As the usage of video streams becomes evenmore common, there is a need for a centralized navigator and searchengine for video streams.

One object of the present invention is to provide a search engine forgraphics and video.

SUMMARY OF THE INVENTION

The present invention provides a method of searching for graphic orvideo files having corresponding locators used to locate such graphic orvideo files using a computer. The method comprises creating anidentifier of searchable file information from identifier informationrelated to a graphic or video file and storing the identifier and thelocator for the graphic or video file in a database. The method furthercomprises receiving search criteria, and searching the identifiers inthe database in order to select content matching the request of theuser. The results of the search are sent or displayed for the user. Inanother embodiment of the present invention, video and graphic contentis provided to a user based on user submitted criteria.

In a preferred embodiment of the present invention, identifiers arecreated by searching an area within a web page near a graphic or videofile and by searching an area within web pages near links to a graphicor video file for searchable identification terms.

The present invention provides a system for searching for graphic orvideo files having corresponding locators used to locate such graphic orvideo files. The system comprises a means for creating an identifiercontaining searchable file information from identifier informationrelated to a graphic or video file. The system further comprises adatabase for storing an identifier, as well as an input for receivingsearch criterion from a user. The system uses a search engine to searchthe identifiers in the database. The system sends or displays theresults of the search for the user.

These and other aspects of the present invention are more readilyunderstood when considered in conjunction with the accompanying drawingsand the following detailed description.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system utilizing a video search engine inaccordance with one embodiment of the present invention.

FIG. 2 is a flow diagram of a process of content development, identifiercreation, and search.

FIG. 3 illustrates a video frame with embedded identifier information inaccordance with the present invention.

FIG. 4 is a flow diagram of a search process of the present invention.

DETAILED DESCRIPTION

An overview of a video search engine (“VSE”) in accordance with thepresent invention is illustrated in FIG. 1. The system of FIG. 1comprises a content provider 10, a search engine 12, and a contentviewer 14. The content provider, the search engine, and the contentviewer, are coupled to each other via a remote communication interface15. In the embodiment described, the remote communication interfacecomprises the Internet, although in alternative embodiments the remotecommunication interface comprises an Intranet, or other computer tocomputer interface. In the embodiment described, the content site, thesearch site, and the viewer site all comprise computers. In alternativeembodiments, the content site, the search site, and/or the viewer sitecomprise set-top boxes. In another embodiment, one site may contain morethan one of the viewer site, content site, and search site, such as onesite containing both the viewer site and the search engine.

An overview of a process in accordance with one embodiment of thepresent invention is shown in FIG. 2. The graphic or video content iscreated 16. Identifier information is inserted into the graphic or videofile, or the area surrounding a graphic or video file link 18. Theprocess receives searchable identifier information including thelocation of the file and creates an identifier entry in a storage device20. The process receives a request for video or graphic content from auser 22. The process conducts a search for video or graphic content anddisplays the results to the user 24. The process provides numerousservices on the selected video and graphic files to the user 26.

Graphic or video content is created using specialized software andhardware, as well as other equipment such as a camera. For example, agraphic may be created by scanning a picture with a scanner, or bycreating a freehand drawing in a drawing program. A video may be createdfor example by using a digital video camera, or by digitizing analogvideo using a video capture board in a computer. As used herein the termvideo includes animation.

In an embodiment of the present invention, the process for searching andmanipulating video and graphic content over the Internet comprises asystem of identifiers. An identifier is created for each graphic orvideo file from pieces of information herein called identifierinformation. As shown in the examples below, an identifier for a videofile comprises one or more of the following: a text string or othersearchable attribute of a whole, segment, frame, or sub element of avideo. The identifiers are used to consistently identify a whole,segment, frame, or sub element of a video respectively. An identifierfor a graphic file comprises a text string or other searchable attributeof the graphic file.

Examples of identifiers are shown below. Example 1 is a whole videoidentifier. Example 2 is a video segment identifier. Example 3 is avideo frame identifier.

Example 1

A whole video identifier comprises one or more of the following:

-   -   Format of video stream    -   Size of video stream    -   Play time of video stream (including number of frames)    -   Whether or not sound is contained    -   Date of creation    -   Category of video stream    -   Whether it requires conditional access or payment    -   Text description of the video stream (This may also be broken        down into additional fields including: content, author,        director, year made, category, actor/actresses, owner, star        rating, and parental control code.)    -   Representative frame of the video stream    -   Representative audio stream    -   Number of identified segments in the video stream    -   Number of identified frames in the video stream    -   A unique ID    -   Linking and other association information

Example 2

A video segment identifier comprises one or more of the following:

-   -   Unique ID of the video stream to which it is a segment    -   Segment sequence information (from frame x to frame y) which        allows unique identification of the frame when used with the        unique ID of the video stream    -   Category of video segment    -   Whether it requires conditional access or payment    -   Text description of the video segment (This may also be broken        down into additional fields including: content, author or        director, year made, category, actor/actresses, owner, star        rating, and parental control code.)    -   Representative frame of the video segment    -   Representative audio stream    -   Number of identified segments in the video segment    -   Number of identified frames in the video segment    -   Linking and other association information

Example 3

A video frame identifier comprises one or more of the following:

-   -   Unique ID of the video stream in which it is a frame    -   Frame sequence information which allows unique identification of        the frame when used with the unique ID of the video stream    -   Category of video frame    -   Whether it requires conditional access or payment    -   Text description of the video frame (This may also be broken        down into additional fields including: content, author or        director, year made, category, actor/actresses, owner, star        rating, parental control code.)    -   Linking and other association information

In a preferred embodiment, the textual elements of the identifier arestandardized to facilitate creation, searching and archiving. Inadditional embodiments, one or more of the textual elements of theidentifier is in coded, compressed, or encrypted form. Additionally, thetextual elements in coded form utilize static and/or dynamicdictionaries.

In an embodiment of the present invention, the process for integratingidentifier information into a video or graphic file is a part of thecreation of the graphic or video file. The process is resident in thesoftware or hardware used to create the content, and integratesidentifier information into the graphic or video automatically as thevideo or graphic is saved to a storage device, such as a hard disk,optical disk, floppy disk or similar device.

In an alternative embodiment of the present invention, a process forintegrating identifier information into a video or graphic file isperformed after the creation of the graphic or video. Already createdgraphic or video files are submitted to a process server along withdesired identifier information and the files are modified withidentifier information. The modified file is saved to a storage device,such as a hard disk, optical disk, floppy disk or similar device.

The process provides a means of attaching identifier information to avideo in a manner that does not interfere with the viewing clarity ofthe video. In an embodiment of the present invention, the processintegrates textual identifier information into the filename of the videostream or graphic file. In an alternative embodiment of the presentinvention, the identifier information is located in a part of the filethat is not displayed by viewer software, such as at the beginning orthe end of the file.

In a preferred embodiment of the present invention, as shown in FIG. 3,the textual identifier information 28 is embedded in each frame of avideo, so that the video is identifiable to the accuracy of a frame. Ina more preferred embodiment of the present invention the textualidentifier information 28 is placed on the outside periphery of eachframe of the video 30. In a particularly preferred embodiment of thepresent invention, the placing of the identifier information is hiddenby displaying the video stream within a graphically created frame 32that overlaps the periphery of the video so as to obscure the identifierinformation placed in the periphery of the video. In another embodimentof the present invention a graphic file has textual identifierinformation placed on its periphery as done with a video stream above.

In another embodiment of the present invention, the video contentcomprises a stream of packets containing the elements of the video. Eachpacket contains informational headers indicating the content containedin the packet. Identifier information is placed into informationalpackets that are located within a video stream. These informationalpackets contain headers identifying them as non-video packets. Theinformation packets are not displayed by the video viewer, but are usedby the identifier creation process to acquire identifier information foreach whole, segment, or frame of the video.

In an embodiment of the present invention, the content comprises graphicor video files wherein the identifier information is not located insideof the file itself. To acquire identifier information, the processsearches the content surrounding the graphic or video on the contentprovider's computer. The process also searches the content of a web pagesurrounding links to the graphic or video, or receives identifierinformation directly from the content provider. Alternatively, theidentifier information is placed in a file accompanying the graphic orvideo file.

In an embodiment of the present invention, the process generatesidentifiers to be searched by automatically locating video streams orgraphics on the web, reading any associated text surrounding any linksto the video stream or graphic, and using the text to create anidentifier or identifiers for a video or graphic file. The process alsosearches through web sites that contain video streams or graphics, andusing pointers in such web sites that open or click to the video streamor graphic or web page containing the video stream or graphic, and“reverse locates” any text description of the video stream.Additionally, a database of links contained in a large number of otherweb sites from throughout the world wide web, such as a typical databasecreated by a web spider or web crawler, is searched for other web pageswith links to the video or graphics file. After generating anidentifier, the process stores the identifier in a database. In apreferred embodiment of the present invention, the database is stored ina storage device, such as a hard disk, optical disk, floppy disk orsimilar device.

For example, when a link is used to open a video stream, the processautomatically searches to find all of the web pages where the link iscontained, whether from the same web site as the video or graphic fileor other web site. Once a link to the graphic or video is found, theprocess searches in the “neighborhood” around the link to acquirerelevant text information. The text in the “neighborhood” or area aroundthe link is likely to contain descriptive and informational terms ofinterest. The closer to the link, the more likely the text is to containrelevant information. Text within the same paragraph, column, or generalpage area as the link, is likely to contain some information that can beplaced into a searchable identifier. When more than one web page isfound that contains links to the video or graphic, a comparison isperformed on the “neighborhood” text from the various web pages andterms or phrases that appear on more than one web page. Such terms incommon are given more weight in the identifier for the video stream.Further, the more of these web pages that include the same terms, themore weight is given to these terms in the identifier.

In a preferred embodiment of the present invention, text parsingtechniques are used to identify relevant lines of text to incorporateinto the textual description and other textual fields such as a date ofcreation, size, or category of the video in the identifier.Alternatively, keywords are used to locate and incorporate relevantinformation into the textual description and other textual fields in theidentifier.

In an additional embodiment of the present invention, the processsolicits a user to submit information regarding a graphic or video fileand then generates one or more tags to be inserted into the areasurrounding the link to the graphic or video file. Currently, meta-tagsexist for describing a page of content, but additional specialized tagsmay be created to contain identifier information for other specifictypes of content. Once the tags are inserted into the area surroundingthe link, the automatic identifier creation process creates a searchablelink to the video or graphic.

In an additional embodiment of the present invention, the processsolicits a user to submit information regarding a graphic or video file.Using the user provided information along with the location of the file,the process generates an identifier, and saves the identifier in adatabase. Alternatively, the process solicits a user to submitinformation regarding a graphic or video file and then generates a filethat contains identifier information about the graphic or video file toaccompany the graphic or video file.

An embodiment of the present invention allows a user to search throughidentifiers to locate one or more graphics or videos. The processlocates and retrieves video and graphic files by searching through theidentifiers in a database for desired attributes and uses the locationinformation in the identifier to acquire the file.

In a preferred embodiment of the present invention, as shown in FIG. 4,in response to a user request 34, the process generates a search screen36 containing several fields, each for a different searchable attribute,prompting the user to specify the content of each attribute that theywould like to search by. The process receives the user's search criteria38 and then conducts a search of the various file identifiers in astorage device 40. The process generates a results page 42 listingmatches to the user's search criteria. The results page compriseshotlinks to the graphic or video files, as well as descriptions andother attributes of the files.

In another embodiment of the present invention, the results pageprovides a link to a detailed information page 44. The process caches aportion of a video, or an attribute of the video, such-as an audiosegment, or at least one video frame or sub-frame, to enable a user tofurther identify content. Additionally, the process aggregates theidentifiers for display to users on the detailed information page.

In a preferred embodiment of the present invention, the processassembles a “video guide” that comprises: a text description of a video,a URL or other location indicator for locating a whole, segment, orframe of a video, an audio sample from the video, and “teaser” frames orsegments of a video to assist in the identification or promotion of avideo. In an embodiment of the present invention, the “video guide” isresident on a central server, in a local unit, or a combination of both.

In a more preferred embodiment of the present invention, the “videoguide” enables a user to locate, display, download, and record aselected whole, segment, frame, or sub-component of a video. Moreover,the “video guide” allows a user to conduct all of the above operations,as well as finding, selecting, grouping, erasing, concatenating,segmenting, and integrating a class of videos. In a preferred embodimentof the present invention, the “video guide” is a software, firmware, orhardware feature resident in a personal computer or similar devicecapable of storing video streams.

In an additional embodiment of the present invention, the processintegrates video or graphic information with a conditional access systemor a payment system. The identifier for the video or graphic contains afield indicating whether there is a conditional access or paymentsystem. If there is a conditional access or payment system, then theidentifier contains information about the access site or payment systemand/or a link to the access site or payment system. In a preferredembodiment of the present invention, the process solicits the user forthe authorization information or payment, and only upon properauthorization allows the user to access the video or graphic.

In an additional embodiment of the present invention, the processintegrates video stream information with television programs that arereceivable on the same device enabling the video or graphic search. Ifthere is a link to a television show, the identifier contains a link tothat televisions show and conveys that information to a user.Additionally, the process enables the user to search for video streamsand graphics using television links as a searchable attribute.

In an additional embodiment of the present invention, the processintegrates video stream information with other information, such asguides or lists of other items associated with the video stream. Itemsassociated with the video or graphic include products, services, and websites. Additionally, the process provides links to other information,whether or not that information is related to the video.

In an additional embodiment of the present invention, the process allowsthe user to customize, program, or set parameters for the usage of theprocess, such as smart agent filtering, a programmed search of certaintypes of video streams already in existence, and programmed “alert”searching for types of video streams coming into existence in thefuture. Additionally, the process provides a means of filtering,selecting or blocking whole video files, video segments, and videoframes in accordance with user controls, such as the blocking ofviolence or nudity from a video.

The preceding description has been presented with reference to thepresently preferred embodiments of the invention shown in the drawings.Workers skilled in the art and technology to which this inventionpertains will appreciate that alteration and changes in the describedprocesses and structures can be practiced without departing from thespirit, principles and scope of this invention.

Accordingly, the present invention provides for a video search engine.Although this invention has been described in certain specificembodiments, many additional modifications and variations would beapparent to those skilled in the art. It is therefore to be understoodthat this invention may be practiced otherwise than as specificallydescribed. Thus, the present embodiments of the invention should beconsidered in all respects as illustrative and not restrictive, thescope of the invention to be determined by the claims supported by thisapplication and their equivalents rather than the foregoing description.

1. A computer-implemented method of providing a video guide comprising:using an Internet communication interface, receiving information about aplurality of video files by receiving information regarding at least onevideo file supplied by each of a plurality of users, wherein theinformation comprises a location of the at least one video file; storingthe received information regarding the plurality of video files; andproviding a video guide for display, the displayed video guidecomprising a text description of each of the plurality of video files, alocation indicator for each of the plurality of video files, a teaserframe for each of the plurality of video files, and information about aproduct associated with at least one of the plurality of video files;wherein the displayed video guide further comprises information about anitem, wherein the item is at least one of service and website that isassociated with at least one of the plurality of video files.
 2. Themethod of claim 1 further comprising automatically storing at least oneof the plurality of video files in a storage device.
 3. The method ofclaim 1, further comprising receiving an instruction to perform anoperation with at least one of the plurality of video files, wherein theoperation comprises one or more of viewing, saving, downloading, andsending.
 4. The method of claim 1, wherein providing the video guide fordisplay comprises providing a file including the text description ofeach of the plurality of video files.
 5. A computer-implemented methodof providing video information comprising: receiving a useridentification of a video file; receiving a submission of user-providedinformation about the video file through an Internet interface; storingat least a portion of the user-provided information about the video filein a memory as identifier information; receiving a user input; inresponse to receiving the user input, retrieving the identifierinformation; providing at least a portion of the video file accompaniedby the identifier information; and providing information about a productassociated with the video file; wherein providing at least a portion ofthe video file accompanied by the identifier information furthercomprises providing information about an item, wherein the item is atleast one of a service and website that is associated with the videofile.
 6. The method of claim 5 further comprising automatically storingthe video file in a storage device.
 7. The method of claim 5, furthercomprising receiving an instruction to perform an operation with thevideo file, wherein the operation comprises one or more of viewing,saving, downloading, and sending.
 8. The method of claim 5, wherein theat least a portion of the video file is provided as a stream of packets.9. The method of claim 5, wherein providing at least a portion of thevideo file accompanied by the identifier information comprises providinga file including the identifier information to accompany the video file.10. A system for providing a video guide comprising: a storage device,operatively connected to a processor and configured to store informationregarding one or more video files; and the processor, configured tocommunicate with one or more user devices via the Internet, and toreceive, from at least one user device, information about a plurality ofvideo files by receiving information regarding at least one video filesupplied by each of a plurality of user devices, wherein the informationcomprises a location of the at least one video file; the processorfurther configured to store the received information regarding theplurality of video files in the storage device; and provide a videoguide to at least one user device for display, the displayed video guidecomprising a text description of each of the plurality of video files, alocation indicator for each of the plurality of video files, a teaserframe for each of the plurality of video files, and information about aproduct associated with at least one of the plurality of video files;wherein the displayed video guide further comprises information about anitem, wherein the item is at least one of a service and website that isassociated with at least one of the plurality of video files.
 11. Thesystem of claim 10, the processor further configured to automaticallystore at least one of the plurality of video files in the storagedevice.
 12. The system of claim 10, the processor further configured toreceive an instruction to perform an operation with at least one of theplurality of video files, wherein the operation comprises one or more ofviewing, saving, downloading, and sending.
 13. The system of claim 10,wherein providing the video guide for display comprises providing a fileincluding the text description of each of the plurality of video files.14. The system of claim 10, wherein the processor is further configuredto provide at least a portion of at least one of the plurality of videofiles.
 15. The system of claim 14, wherein the at least a portion of atleast one of the plurality of video files is provided as a stream ofpackets.
 16. The system of claim 14, wherein the video guide comprises afile including the text description.
 17. The system of claim 14, whereinthe location indicator includes a URL.